/**
 * Excel模板生成工具
 */
import { exportTableToExcel } from './excel';

/**
 * 生成菜单Excel导入模板
 * 返回是否成功
 */
export function generateMenuExcelTemplate() {
  try {
    // 创建示例数据
    const templateData = [
      {
        ID: 1,
        父节点ID: null,
        菜单名称: '系统管理',
        路径: '/system',
        组件路径: 'Layout',
        权限标识: 'system',
        图标: 'el-icon-setting',
        类型: '目录',
        排序: 1,
        状态: '启用',
        层级: 0
      },
      {
        ID: 11,
        父节点ID: 1,
        菜单名称: '用户管理',
        路径: '/system/user',
        组件路径: 'system/user/index',
        权限标识: 'system:user',
        图标: 'el-icon-user',
        类型: '菜单',
        排序: 1,
        状态: '启用',
        层级: 1
      },
      {
        ID: 111,
        父节点ID: 11,
        菜单名称: '用户查询',
        路径: '',
        组件路径: '',
        权限标识: 'system:user:query',
        图标: '',
        类型: '按钮',
        排序: 1,
        状态: '启用',
        层级: 2
      }
    ];
    
    // 获取表头配置
    const columns = [
      { label: 'ID', prop: 'ID' },
      { label: '父节点ID', prop: '父节点ID' },
      { label: '菜单名称', prop: '菜单名称' },
      { label: '路径', prop: '路径' },
      { label: '组件路径', prop: '组件路径' },
      { label: '权限标识', prop: '权限标识' },
      { label: '图标', prop: '图标' },
      { label: '类型', prop: '类型' },
      { label: '排序', prop: '排序' },
      { label: '状态', prop: '状态' },
      { label: '层级', prop: '层级' }
    ];
    
    // 导出Excel模板
    return exportTableToExcel(templateData, columns, '菜单导入模板');
  } catch (error) {
    console.error('生成Excel模板失败:', error);
    return false;
  }
}

/**
 * 获取Excel导入说明
 * 返回说明列表
 */
export function getExcelImportInstructions() {
  return [
    '1. 请按照模板格式填写数据，不要修改表头',
    '2. ID字段必须唯一，为整数类型',
    '3. 父节点ID为父节点的ID，顶级节点的父节点ID为空或0',
    '4. 类型字段：目录、菜单、按钮',
    '5. 状态字段：启用、禁用',
    '6. 层级字段用于表示菜单层级，顶级菜单为0，子菜单依次增加',
    '7. 导入时会自动重建树形结构，请确保父节点ID正确'
  ];
} 